package com.haruhinav.service;

import com.haruhinav.entity.MusicServer;
import com.haruhinav.entity.PlayList;
import com.haruhinav.entity.UserPlaylist;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface MusicService {
    //    所有音乐平台
    List<MusicServer> getAllMusicServer();
    //所有歌单  一对多
    Map<String,Object> getAllPlayListBySId();
    // 将用户还没有歌单的平台查询出来
    List<MusicServer> findMusicServerByUserNotInSId(int uid);

    // 获取用户的歌单
    List<MusicServer> findPlaylistByUser(int uid);
    //   根据备注和平台id查歌单 一对一
    List<PlayList> findPlaylistByExplainAndSId(PlayList playList);
    List<PlayList> findPlaylistByExplainAndSId2(String exp,Integer sid);


    //    添加用户歌单（自动选择平台添加和添加新的平台同一此接口）
    Map<String,Object> insertUserPlaylist(UserPlaylist userPlaylist);

    //    根据id删除用户歌单
    int removePlaylistById(int id);

    //    根据uid和平台id删除用户歌单
    int removePlaylistByUIdAndSid(int uid,int sid);
    //    根据id查找用户歌单
    UserPlaylist findUserPlaylistById(int id);

    //    根据id修改用户歌单
    Map<String,Object> updateUserPlaylistById(UserPlaylist userPlaylist);

    //    根据id修改用户歌单（仅修改备注）
    int updateUPlExplainById(String explain,int id);
}
